Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.03.2016, 11:06
Новичок на форуме
Отправить личное сообщение для lexus777 Посмотреть профиль Найти все сообщения от lexus777
 
Регистрация: 28.03.2016
Сообщений: 1

Вывод последовательно итераций массива без перезагрузки
Здравствуйте! Есть ассоциативный массив(вопросы с вариантами ответа):
<?php

$test = [
        'Who are you?' => ["Men", "Women", "Choosen_one", "Mutant"],
        'What is you name?' => ["Neo", "Morpheus", "Trinity", "Tank"],
        'How old are you?' => ['10', '25', '40', '60'],
        'Follow the white rabbit?' => ['Yes', 'No', 'Dont_know', 'Maybe'],
        'What is you favorite food?' => ['Sweets', 'Cakes', 'Meat', 'Vegetables']
    ];

//$questions = array_keys($test);
//shuffle($questions);
//foreach ($questions as $value) {
//    $answers = $test[$value];
//    shuffle($answers);
//    echo "<b>{$value}</b><br/>";
//    foreach ($answers as $value2) {
//        echo "<input type='radio' name='$value' value=$value2 required>{$value2}<br>";
//    }
//}

echo (json_encode($test));


Есть выборка средствами jquery/ajax:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="http://code.jquery.com/jquery-2.2.2.min.js"></script>
    <style>
        #b1, #b2, #b3, #b4 {
            background-color: aqua;
            border: 1px solid black;
            width: auto;
            text-align: center;
            display: inline-block;
        }

        #b1:hover, #b2:hover, #b3:hover, #b4:hover {
            background-color: yellowgreen;
            cursor: pointer
        }
    </style>
</head>
<body>
<script>
    $(function () {
        $("#next").click(function () {
//            $('#ajax_content').html('');
            $.ajax({
                url: "index.php", success: function (result) {
                    var json = $.parseJSON(result);
                    var array = new Array();
                    var counterQ = 0;
                    $.each(json, function (index, value) {
                        array[counterQ] = index;
                        counterQ++;
                    });
                    var counterA = 0;
                    $.each(json, function (index, value) {
                        if (array[counterA] == index) {
                            $('#ajax_content').text(index);
                            $('#b1').text(value[0]);
                            $('#b2').text(value[1]);
                            $('#b3').text(value[2]);
                            $('#b4').text(value[3]);
                        }
                        alert(counterA++);
                    });
                }
            });
        });
    });
 </script>
<b>
    <div id="ajax_content"></div>
</b>
<br>

<div id="b1"></div>
<div id="b2"></div>
<div id="b3"></div>
<div id="b4"></div>
<br><br>
<button id="next">Load next</button>

</body>
</html>


Собственно вопросы:
1. Как выводить на странице браузера без костыля(alerta) - каждый отдельный вопрос, после ответа на предыдущий, обязательно без перезагрузки страницы? Нужно выводить после выбора ответа и реакции на кнопку LOAD NEXT.
2. И как передать вопросы/ответы построенные в рандомном порядке?(код без AJAX ранее был рабочий - закоментирован)
3. Как сохранять ответы на вопросы? Записывать в массив по нажатию на кнопки?


Читал http://alljs.ru/articles/timeout/overview#nosleep
но не понял как это реализовать в моем случае.
Если можно, пожалуйста с коментариями - хочу понять всю логику и последовательность действий.

Заранее большое спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 28.03.2016, 14:31
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от lexus777
Есть ассоциативный массив(вопросы с вариантами ответа)
......
Как сохранять ответы на вопросы? Записывать в массив по нажатию на кнопки?
Почему не база?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax контент без перезагрузки на Joomla TanyaRom AJAX и COMET 1 02.09.2015 14:37
Подмена адреса без перезагрузки страницы MArtyn911 Оффтопик 14 19.07.2013 00:08
Отправка данных обработчику без перезагрузки dimjan4 AJAX и COMET 10 06.06.2009 21:53
Подгрузка информера без перезагрузки страницы splean Общие вопросы Javascript 6 13.03.2009 15:31
Автообновление <div> без перезагрузки страницы Antihrist AJAX и COMET 14 28.07.2008 06:06